\hypertarget{class_zebulon_1_1_genetic_algorithms_1_1_settings}{
\section{Zebulon::GeneticAlgorithms::Settings Class Reference}
\label{class_zebulon_1_1_genetic_algorithms_1_1_settings}\index{Zebulon::GeneticAlgorithms::Settings@{Zebulon::GeneticAlgorithms::Settings}}
}


Structure for storing settings information used in the evolution process.  


{\ttfamily \#include $<$settings.h$>$}\subsection*{Classes}
\begin{DoxyCompactItemize}
\item 
class \hyperlink{class_zebulon_1_1_genetic_algorithms_1_1_settings_1_1_crossover}{Crossover}
\begin{DoxyCompactList}\small\item\em \hyperlink{class_zebulon_1_1_genetic_algorithms_1_1_settings_1_1_crossover}{Crossover} settings. \item\end{DoxyCompactList}\item 
class \hyperlink{class_zebulon_1_1_genetic_algorithms_1_1_settings_1_1_mutation}{Mutation}
\begin{DoxyCompactList}\small\item\em \hyperlink{class_zebulon_1_1_genetic_algorithms_1_1_settings_1_1_mutation}{Mutation} settings. \item\end{DoxyCompactList}\item 
class \hyperlink{class_zebulon_1_1_genetic_algorithms_1_1_settings_1_1_selection}{Selection}
\begin{DoxyCompactList}\small\item\em Selections settings. \item\end{DoxyCompactList}\item 
class \hyperlink{class_zebulon_1_1_genetic_algorithms_1_1_settings_1_1_species}{Species}
\begin{DoxyCompactList}\small\item\em \hyperlink{class_zebulon_1_1_genetic_algorithms_1_1_settings_1_1_species}{Species} settings. \item\end{DoxyCompactList}\item 
class \hyperlink{class_zebulon_1_1_genetic_algorithms_1_1_settings_1_1_tournament}{Tournament}
\begin{DoxyCompactList}\small\item\em Data used within the \hyperlink{class_zebulon_1_1_genetic_algorithms_1_1_settings_1_1_tournament}{Tournament} \hyperlink{class_zebulon_1_1_genetic_algorithms_1_1_settings_1_1_selection}{Selection} method. \item\end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\hypertarget{class_zebulon_1_1_genetic_algorithms_1_1_settings_ab7169a6eefce79566dd07db3b1e5e967}{
\hyperlink{class_zebulon_1_1_genetic_algorithms_1_1_settings_ab7169a6eefce79566dd07db3b1e5e967}{Settings} ()}
\label{class_zebulon_1_1_genetic_algorithms_1_1_settings_ab7169a6eefce79566dd07db3b1e5e967}

\begin{DoxyCompactList}\small\item\em Constructor. \item\end{DoxyCompactList}\item 
\hypertarget{class_zebulon_1_1_genetic_algorithms_1_1_settings_a4a65be5921dfc9fddc476e5320541d89}{
\hyperlink{class_zebulon_1_1_genetic_algorithms_1_1_settings_a4a65be5921dfc9fddc476e5320541d89}{$\sim$Settings} ()}
\label{class_zebulon_1_1_genetic_algorithms_1_1_settings_a4a65be5921dfc9fddc476e5320541d89}

\begin{DoxyCompactList}\small\item\em Destructor. \item\end{DoxyCompactList}\item 
bool \hyperlink{class_zebulon_1_1_genetic_algorithms_1_1_settings_a5c521d63c2207a0bbf92073d594025a9}{LoadSettings} (const std::string \&xmlFile)
\begin{DoxyCompactList}\small\item\em Loads GA Evolution settings from an XML file. \item\end{DoxyCompactList}\item 
\hypertarget{class_zebulon_1_1_genetic_algorithms_1_1_settings_a5cbbbd503ebe492358cbab64aded084c}{
void \hyperlink{class_zebulon_1_1_genetic_algorithms_1_1_settings_a5cbbbd503ebe492358cbab64aded084c}{Clear} ()}
\label{class_zebulon_1_1_genetic_algorithms_1_1_settings_a5cbbbd503ebe492358cbab64aded084c}

\begin{DoxyCompactList}\small\item\em Clears data (resets to defaults). \item\end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Public Attributes}
\begin{DoxyCompactItemize}
\item 
\hypertarget{class_zebulon_1_1_genetic_algorithms_1_1_settings_a9a1a373dc01c5064d550b638f557c9a7}{
Mutation::Set \hyperlink{class_zebulon_1_1_genetic_algorithms_1_1_settings_a9a1a373dc01c5064d550b638f557c9a7}{mMutations}}
\label{class_zebulon_1_1_genetic_algorithms_1_1_settings_a9a1a373dc01c5064d550b638f557c9a7}

\begin{DoxyCompactList}\small\item\em Mutations to apply during evolution. \item\end{DoxyCompactList}\item 
\hypertarget{class_zebulon_1_1_genetic_algorithms_1_1_settings_ade73e8c9bf50493655e614a8bba3bbea}{
\hyperlink{class_zebulon_1_1_genetic_algorithms_1_1_settings_1_1_crossover}{Crossover} \hyperlink{class_zebulon_1_1_genetic_algorithms_1_1_settings_ade73e8c9bf50493655e614a8bba3bbea}{mCrossoverMethod}}
\label{class_zebulon_1_1_genetic_algorithms_1_1_settings_ade73e8c9bf50493655e614a8bba3bbea}

\begin{DoxyCompactList}\small\item\em \hyperlink{class_zebulon_1_1_genetic_algorithms_1_1_settings_1_1_crossover}{Crossover} method to use. \item\end{DoxyCompactList}\item 
\hypertarget{class_zebulon_1_1_genetic_algorithms_1_1_settings_a92037cb8f39ffdfbc807191f54c1fbb1}{
Selection::Type \hyperlink{class_zebulon_1_1_genetic_algorithms_1_1_settings_a92037cb8f39ffdfbc807191f54c1fbb1}{mSelectionMethod}}
\label{class_zebulon_1_1_genetic_algorithms_1_1_settings_a92037cb8f39ffdfbc807191f54c1fbb1}

\begin{DoxyCompactList}\small\item\em \hyperlink{class_zebulon_1_1_genetic_algorithms_1_1_settings_1_1_selection}{Selection} method to use for offspring. \item\end{DoxyCompactList}\item 
\hypertarget{class_zebulon_1_1_genetic_algorithms_1_1_settings_a8156aba86aeef4586661a17f83a75cf5}{
\hyperlink{class_zebulon_1_1_genetic_algorithms_1_1_settings_1_1_selection}{Selection} $\ast$ \hyperlink{class_zebulon_1_1_genetic_algorithms_1_1_settings_a8156aba86aeef4586661a17f83a75cf5}{mSelectionMethodData}}
\label{class_zebulon_1_1_genetic_algorithms_1_1_settings_a8156aba86aeef4586661a17f83a75cf5}

\begin{DoxyCompactList}\small\item\em Additional selection method data (Optional). \item\end{DoxyCompactList}\item 
\hypertarget{class_zebulon_1_1_genetic_algorithms_1_1_settings_ab6742ff8b48a6fe8736c4c4415c216a7}{
\hyperlink{class_zebulon_1_1_genetic_algorithms_1_1_settings_1_1_species}{Species} \hyperlink{class_zebulon_1_1_genetic_algorithms_1_1_settings_ab6742ff8b48a6fe8736c4c4415c216a7}{mSpecies}}
\label{class_zebulon_1_1_genetic_algorithms_1_1_settings_ab6742ff8b48a6fe8736c4c4415c216a7}

\begin{DoxyCompactList}\small\item\em Speciation information. \item\end{DoxyCompactList}\item 
\hypertarget{class_zebulon_1_1_genetic_algorithms_1_1_settings_ab4da3d898c319a7c4978fd5364812e50}{
unsigned int \hyperlink{class_zebulon_1_1_genetic_algorithms_1_1_settings_ab4da3d898c319a7c4978fd5364812e50}{mPopulationSize}}
\label{class_zebulon_1_1_genetic_algorithms_1_1_settings_ab4da3d898c319a7c4978fd5364812e50}

\begin{DoxyCompactList}\small\item\em Size of the population. \item\end{DoxyCompactList}\item 
\hypertarget{class_zebulon_1_1_genetic_algorithms_1_1_settings_aab71d23d0b2e3798a135da5268432f2d}{
unsigned int \hyperlink{class_zebulon_1_1_genetic_algorithms_1_1_settings_aab71d23d0b2e3798a135da5268432f2d}{mNumberOfGenerations}}
\label{class_zebulon_1_1_genetic_algorithms_1_1_settings_aab71d23d0b2e3798a135da5268432f2d}

\begin{DoxyCompactList}\small\item\em Number of generations per run. \item\end{DoxyCompactList}\item 
\hypertarget{class_zebulon_1_1_genetic_algorithms_1_1_settings_a917e5e51eae2e9634f434cc44f7cc8b6}{
unsigned int \hyperlink{class_zebulon_1_1_genetic_algorithms_1_1_settings_a917e5e51eae2e9634f434cc44f7cc8b6}{mNumberOfRuns}}
\label{class_zebulon_1_1_genetic_algorithms_1_1_settings_a917e5e51eae2e9634f434cc44f7cc8b6}

\begin{DoxyCompactList}\small\item\em Total number of runs. \item\end{DoxyCompactList}\item 
\hypertarget{class_zebulon_1_1_genetic_algorithms_1_1_settings_a5661262410957c55d828298c33d4e2c9}{
unsigned int \hyperlink{class_zebulon_1_1_genetic_algorithms_1_1_settings_a5661262410957c55d828298c33d4e2c9}{mMaxChromosomeSize}}
\label{class_zebulon_1_1_genetic_algorithms_1_1_settings_a5661262410957c55d828298c33d4e2c9}

\begin{DoxyCompactList}\small\item\em Maximum chromosome size. \item\end{DoxyCompactList}\item 
\hypertarget{class_zebulon_1_1_genetic_algorithms_1_1_settings_a3bff1588f0892f05adf508b9da6c38b0}{
unsigned int \hyperlink{class_zebulon_1_1_genetic_algorithms_1_1_settings_a3bff1588f0892f05adf508b9da6c38b0}{mElitismCount}}
\label{class_zebulon_1_1_genetic_algorithms_1_1_settings_a3bff1588f0892f05adf508b9da6c38b0}

\begin{DoxyCompactList}\small\item\em Number of parents to survive to next generation unchanged. \item\end{DoxyCompactList}\item 
\hypertarget{class_zebulon_1_1_genetic_algorithms_1_1_settings_a2b9f2ec8e11a66c9ebee53c890262224}{
bool \hyperlink{class_zebulon_1_1_genetic_algorithms_1_1_settings_a2b9f2ec8e11a66c9ebee53c890262224}{mLoggingFlag}}
\label{class_zebulon_1_1_genetic_algorithms_1_1_settings_a2b9f2ec8e11a66c9ebee53c890262224}

\begin{DoxyCompactList}\small\item\em Enable logging. \item\end{DoxyCompactList}\item 
\hypertarget{class_zebulon_1_1_genetic_algorithms_1_1_settings_ab4798b6a90bd166dfbc595dbf0235001}{
std::string \hyperlink{class_zebulon_1_1_genetic_algorithms_1_1_settings_ab4798b6a90bd166dfbc595dbf0235001}{mBestSolutionDir}}
\label{class_zebulon_1_1_genetic_algorithms_1_1_settings_ab4798b6a90bd166dfbc595dbf0235001}

\begin{DoxyCompactList}\small\item\em Directory to save best solutions to. \item\end{DoxyCompactList}\item 
\hypertarget{class_zebulon_1_1_genetic_algorithms_1_1_settings_aca53860bea335d9fb9c16510f7fad27e}{
std::string \hyperlink{class_zebulon_1_1_genetic_algorithms_1_1_settings_aca53860bea335d9fb9c16510f7fad27e}{mBestFitnessFilename}}
\label{class_zebulon_1_1_genetic_algorithms_1_1_settings_aca53860bea335d9fb9c16510f7fad27e}

\begin{DoxyCompactList}\small\item\em Best fitness log filename. \item\end{DoxyCompactList}\item 
\hypertarget{class_zebulon_1_1_genetic_algorithms_1_1_settings_ad6fa841bc02048dd252c99db079ad8c1}{
std::string \hyperlink{class_zebulon_1_1_genetic_algorithms_1_1_settings_ad6fa841bc02048dd252c99db079ad8c1}{mAverageFitnessFilename}}
\label{class_zebulon_1_1_genetic_algorithms_1_1_settings_ad6fa841bc02048dd252c99db079ad8c1}

\begin{DoxyCompactList}\small\item\em Average fitness log filename. \item\end{DoxyCompactList}\item 
\hypertarget{class_zebulon_1_1_genetic_algorithms_1_1_settings_a80428dbfd620de60e98ce5dbdfd199f2}{
std::string \hyperlink{class_zebulon_1_1_genetic_algorithms_1_1_settings_a80428dbfd620de60e98ce5dbdfd199f2}{mAdditionalDataFilename}}
\label{class_zebulon_1_1_genetic_algorithms_1_1_settings_a80428dbfd620de60e98ce5dbdfd199f2}

\begin{DoxyCompactList}\small\item\em Additional settings data filename. \item\end{DoxyCompactList}\end{DoxyCompactItemize}


\subsection{Detailed Description}
Structure for storing settings information used in the evolution process. \hyperlink{class_zebulon_1_1_genetic_algorithms_1_1_settings}{Settings} can load evolution configuration data from an XML file so that different evolutionary configurations can be used without the need to recompile a program. 

\subsection{Member Function Documentation}
\hypertarget{class_zebulon_1_1_genetic_algorithms_1_1_settings_a5c521d63c2207a0bbf92073d594025a9}{
\index{Zebulon::GeneticAlgorithms::Settings@{Zebulon::GeneticAlgorithms::Settings}!LoadSettings@{LoadSettings}}
\index{LoadSettings@{LoadSettings}!Zebulon::GeneticAlgorithms::Settings@{Zebulon::GeneticAlgorithms::Settings}}
\subsubsection[{LoadSettings}]{\setlength{\rightskip}{0pt plus 5cm}bool Settings::LoadSettings (const std::string \& {\em xmlFile})}}
\label{class_zebulon_1_1_genetic_algorithms_1_1_settings_a5c521d63c2207a0bbf92073d594025a9}


Loads GA Evolution settings from an XML file. 
\begin{DoxyParams}{Parameters}
\item[{\em xmlFile}]Filname of XML data to read from.\end{DoxyParams}
\begin{DoxyReturn}{Returns}
True on success, false on failure. 
\end{DoxyReturn}


The documentation for this class was generated from the following files:\begin{DoxyCompactItemize}
\item 
C:/Users/Matt/Documents/School/Robotics/zebulon/v2/zebml/include/ga/\hyperlink{settings_8h}{settings.h}\item 
C:/Users/Matt/Documents/School/Robotics/zebulon/v2/zebml/src/ga/\hyperlink{settings_8cpp}{settings.cpp}\end{DoxyCompactItemize}
